package com.task.core.mapper;

import java.util.List;

import com.task.core.dto.request.DeviceRequestDTO;
import com.task.core.vo.resp.DeviceFraudDetailVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.task.common.domain.info.KeyAndValue;
import com.task.common.info.DeviceFraudInfo;
import com.task.core.dto.request.DeviceFraudRequestDTO;

/**
 * @author 迪迦.
 * @date 2024/11/5 16:26
 */
@Mapper
public interface DeviceFraudMapper {

  List<DeviceFraudInfo> getDeviceFraudByPage(DeviceFraudRequestDTO request);

  DeviceFraudInfo getDeviceFraudByCode(DeviceFraudRequestDTO request);

  List<KeyAndValue> getDeviceFraudForOption(DeviceFraudRequestDTO request);

  void addDeviceFraud(DeviceFraudRequestDTO request);

  Integer modifyDeviceFraud(DeviceFraudRequestDTO request);

  Integer deleteDeviceFraud(@Param("code") String refererSourceCode, @Param("userId") Long userId);

  void deleteMissionDeviceFraudRelation(String deviceFraudCode);

    DeviceFraudDetailVo getDeviceFraudDetail(DeviceRequestDTO deviceRequestDTO);
}
